package com.ruoyi.conference.service;

import java.util.List;

import com.ruoyi.common.core.page.BooleanUtils;
import com.ruoyi.conference.domain.MeetingRoomManage;

/**
 * 会议管理Service接口
 * 
 * @author ruoyi
 * @date 2023-03-04
 */
public interface IMeetingRoomManageService 
{
    /**
     * 查询会议管理
     * 
     * @param mrmId 会议管理主键
     * @return 会议管理
     */
    public MeetingRoomManage selectMeetingRoomManageByMrmId(Integer mrmId);

    /**
     * 查询会议管理列表
     * 
     * @param meetingRoomManage 会议管理
     * @return 会议管理集合
     */
    public List<MeetingRoomManage> selectMeetingRoomManageList(MeetingRoomManage meetingRoomManage);

    /**
     * 查询会议记录列表
     *
     * @param meetingRoomManage 会议记录
     * @return 会议记录集合
     */
    public List<MeetingRoomManage> selectMeetingRoomManageRecordList(MeetingRoomManage meetingRoomManage);


    /**
     * 新增会议管理
     * 
     * @param meetingRoomManage 会议管理
     * @return 结果
     */
    public BooleanUtils insertMeetingRoomManage(MeetingRoomManage meetingRoomManage);

    /**
     * 修改会议管理
     * 
     * @param meetingRoomManage 会议管理
     * @return 结果
     */
    public BooleanUtils updateMeetingRoomManage(MeetingRoomManage meetingRoomManage);

    /**
     * 批量删除会议管理
     * 
     * @param mrmIds 需要删除的会议管理主键集合
     * @return 结果
     */
    public Boolean deleteMeetingRoomManageByMrmIds(Integer[] mrmIds);

    /**
     * 删除会议管理信息
     * 
     * @param mrmId 会议管理主键
     * @return 结果
     */
    public int deleteMeetingRoomManageByMrmId(Integer mrmId);

    /**
     * 批量删除会议管理
     *
     * @param mrmIds 需要删除的会议管理主键集合
     * @return 结果
     */
    public int deleteMeetingRoomManageRecordByMrmIds(Integer[] mrmIds);

    void rollbackEmployee(Object[] array);


    Boolean removeSubscribe(Integer mrmId);
}
